package com.csi.juegoweb.domain;

// Generated 05/03/2011 05:00:03 PM by Hibernate Tools 3.2.1.GA

import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * Jugador generated by hbm2java
 */
@Entity
@Table(name = "jugador"

)
public class Jugador implements java.io.Serializable {

	private Integer coJugador;
	private String coPadre;
	private String noNombre;
	private String noApepat;
	private String noApemat;
	private String noEmail;
	private Integer flEstado;
	private Integer flConfirm;
	private Date flFechaconfir;
	private Set<Grupo> gruposForCoJugcreador = new HashSet<Grupo>(0);
	private Set<GrupoUsuario> grupoUsuarios = new HashSet<GrupoUsuario>(0);
	private Set<Grupo> gruposForCoJugreceptor = new HashSet<Grupo>(0);
	private Set<Donacion> donacions = new HashSet<Donacion>(0);
	private Integer coPortal;

	public Jugador() {
	}

	public Jugador(Integer coJugador) {
		this.coJugador = coJugador;
	}

	public Jugador(String coPadre, String noNombre, String noApepat,
			String noApemat, String noEmail) {
		this.coPadre = coPadre;
		this.noNombre = noNombre;
		this.noApepat = noApepat;
		this.noApemat = noApemat;
		this.noEmail = noEmail;
	}

	public Jugador(String coPadre, String noNombre, String noApepat,
			String noApemat, String noEmail, Integer flEstado,
			Integer flConfirm, Date flFechaconfir,
			Set<Grupo> gruposForCoJugcreador, Set<GrupoUsuario> grupoUsuarios,
			Set<Grupo> gruposForCoJugreceptor, Set<Donacion> donacions) {
		this.coPadre = coPadre;
		this.noNombre = noNombre;
		this.noApepat = noApepat;
		this.noApemat = noApemat;
		this.noEmail = noEmail;
		this.flEstado = flEstado;
		this.flConfirm = flConfirm;
		this.flFechaconfir = flFechaconfir;
		this.gruposForCoJugcreador = gruposForCoJugcreador;
		this.grupoUsuarios = grupoUsuarios;
		this.gruposForCoJugreceptor = gruposForCoJugreceptor;
		this.donacions = donacions;
	}

	@Id
	@GeneratedValue(strategy = IDENTITY)
	@Column(name = "Co_jugador", unique = true, nullable = false)
	public Integer getCoJugador() {
		return this.coJugador;
	}

	public void setCoJugador(Integer coJugador) {
		this.coJugador = coJugador;
	}

	@Column(name = "Co_padre", length = 50)
	public String getCoPadre() {
		return this.coPadre;
	}

	public void setCoPadre(String coPadre) {
		this.coPadre = coPadre;
	}

	@Column(name = "No_nombre", nullable = false, length = 50)
	public String getNoNombre() {
		return this.noNombre;
	}

	public void setNoNombre(String noNombre) {
		this.noNombre = noNombre;
	}

	@Column(name = "No_apepat", nullable = false, length = 50)
	public String getNoApepat() {
		return this.noApepat;
	}

	public void setNoApepat(String noApepat) {
		this.noApepat = noApepat;
	}

	@Column(name = "No_apemat", nullable = false, length = 50)
	public String getNoApemat() {
		return this.noApemat;
	}

	public void setNoApemat(String noApemat) {
		this.noApemat = noApemat;
	}

	@Column(name = "No_email", nullable = false, length = 100)
	public String getNoEmail() {
		return this.noEmail;
	}

	public void setNoEmail(String noEmail) {
		this.noEmail = noEmail;
	}

	@Column(name = "Fl_estado")
	public Integer getFlEstado() {
		return this.flEstado;
	}

	public void setFlEstado(Integer flEstado) {
		this.flEstado = flEstado;
	}

	@Column(name = "Fl_confirm")
	public Integer getFlConfirm() {
		return this.flConfirm;
	}

	public void setFlConfirm(Integer flConfirm) {
		this.flConfirm = flConfirm;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "Fl_fechaconfir", length = 19)
	public Date getFlFechaconfir() {
		return this.flFechaconfir;
	}

	public void setFlFechaconfir(Date flFechaconfir) {
		this.flFechaconfir = flFechaconfir;
	}

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "jugadorByCoJugcreador")
	public Set<Grupo> getGruposForCoJugcreador() {
		return this.gruposForCoJugcreador;
	}

	public void setGruposForCoJugcreador(Set<Grupo> gruposForCoJugcreador) {
		this.gruposForCoJugcreador = gruposForCoJugcreador;
	}

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "jugador")
	public Set<GrupoUsuario> getGrupoUsuarios() {
		return this.grupoUsuarios;
	}

	public void setGrupoUsuarios(Set<GrupoUsuario> grupoUsuarios) {
		this.grupoUsuarios = grupoUsuarios;
	}

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "jugadorByCoJugreceptor")
	public Set<Grupo> getGruposForCoJugreceptor() {
		return this.gruposForCoJugreceptor;
	}

	public void setGruposForCoJugreceptor(Set<Grupo> gruposForCoJugreceptor) {
		this.gruposForCoJugreceptor = gruposForCoJugreceptor;
	}

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "jugador")
	public Set<Donacion> getDonacions() {
		return this.donacions;
	}

	public void setDonacions(Set<Donacion> donacions) {
		this.donacions = donacions;
	}
	@Column(name = "Co_portal")
	public Integer getCoPortal() {
		return coPortal;
	}

	public void setCoPortal(Integer coPortal) {
		this.coPortal = coPortal;
	}

}
